package cn.iocoder.yudao.module.wecom.controller.admin.momenttemplate.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 朋友圈模板新增/修改 Request VO")
@Data
/**
 * 客户朋友圈接口中的素材不会保存太久， 在接口层来说， 图片附件是通过临时素材接口上传的， 所以前端用户在发布朋友圈时， 需要单独上传图片/或使用已有的素材， 但是这个素材都需要
 * 调用 上传附件资源 接口 并返回 media_id 给接口使用。
 */
public class MomentTemplateSaveReqVO {

    @Schema(description = "消息模板编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "24898")
    private Long id;

    @Schema(description = "模板标题", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotEmpty(message = "模板标题不能为空")
    private String title;

    @Schema(description = "模板内容", requiredMode = Schema.RequiredMode.REQUIRED)
    private String content;

    @Schema(description = "排序", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer sort;

    @Schema(description = "附件类型：0-无；1-图片；2-链接", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "附件类型：0-无；1-图片；2-链接不能为空")
    private Integer attachmentType;

    @Schema(description = "图片链接地址，最多9个", example = "https://www.iocoder.cn")
    private List<String> imgUrl;

    @Schema(description = "链接的标题")
    private String linkTitle;

    @Schema(description = "链接缩略图", example = "https://www.iocoder.cn")
    private String linkPicUrl;

    @Schema(description = "链接URL", example = "https://www.iocoder.cn")
    private String linkUrl;

    @Schema(description = "链接描述")
    private String linkDesc;

}